// samsting : this file is auto create.

#include "Ecs/2014-05-26/DescribeRouteTablesResponse.h"

namespace aliyun { namespace Ecs {

DescribeRouteTablesResponse::DescribeRouteTablesResponse() {
}

const string& DescribeRouteTablesResponse::RouteTable::RouteEntry::GetRouteTableId(void) const {
  return RouteTableId_;
}

const string& DescribeRouteTablesResponse::RouteTable::RouteEntry::GetDestinationCidrBlock(void) const {
  return DestinationCidrBlock_;
}

const string& DescribeRouteTablesResponse::RouteTable::RouteEntry::GetType(void) const {
  return Type_;
}

const string& DescribeRouteTablesResponse::RouteTable::RouteEntry::GetStatus(void) const {
  return Status_;
}

const string& DescribeRouteTablesResponse::RouteTable::RouteEntry::GetInstanceId(void) const {
  return InstanceId_;
}

const string& DescribeRouteTablesResponse::RouteTable::RouteEntry::GetNextHopType(void) const {
  return NextHopType_;
}

const std::vector<DescribeRouteTablesResponse::RouteTable::RouteEntry>& DescribeRouteTablesResponse::RouteTable::GetRouteEntrys(void) const {
  return RouteEntrys_;
}

const string& DescribeRouteTablesResponse::RouteTable::GetVRouterId(void) const {
  return VRouterId_;
}

const string& DescribeRouteTablesResponse::RouteTable::GetRouteTableId(void) const {
  return RouteTableId_;
}

const string& DescribeRouteTablesResponse::RouteTable::GetRouteTableType(void) const {
  return RouteTableType_;
}

const string& DescribeRouteTablesResponse::RouteTable::GetCreationTime(void) const {
  return CreationTime_;
}

const std::vector<DescribeRouteTablesResponse::RouteTable>& DescribeRouteTablesResponse::GetRouteTables(void) const {
  return RouteTables_;
}

int DescribeRouteTablesResponse::GetTotalCount(void) const {
  return TotalCount_;
}

int DescribeRouteTablesResponse::GetPageNumber(void) const {
  return PageNumber_;
}

int DescribeRouteTablesResponse::GetPageSize(void) const {
  return PageSize_;
}

const char* DescribeRouteTablesResponse::BaseKey(void) {
  return "DescribeRouteTablesResponse";
}

void DescribeRouteTablesResponse::UnmarshallerMap(std::map<string, string>& response_map) {
  int RouteTables__length = 0;
  UnmarshallerInt(RouteTables__length, response_map, "DescribeRouteTablesResponse.RouteTables.Length");
  if(RouteTables__length >= 0) {
    RouteTables_.resize(RouteTables__length);
    for(int i1 = 0; i1 < RouteTables__length; i1++) {
      int RouteTables_i1_RouteEntrys__length = 0;
      UnmarshallerInt(RouteTables_i1_RouteEntrys__length, response_map, "DescribeRouteTablesResponse.RouteTables[+"+string_ValueOfInt(i1)+"].RouteEntrys.Length");
      if(RouteTables_i1_RouteEntrys__length >= 0) {
        RouteTables_[i1].RouteEntrys_.resize(RouteTables_i1_RouteEntrys__length);
        for(int i2 = 0; i2 < RouteTables_i1_RouteEntrys__length; i2++) {
          UnmarshallerString(RouteTables_[i1].RouteEntrys_[i2].RouteTableId_, response_map, "DescribeRouteTablesResponse.RouteTables[+"+string_ValueOfInt(i1)+"].RouteEntrys["+string_ValueOfInt(i2)+"].RouteTableId");
          UnmarshallerString(RouteTables_[i1].RouteEntrys_[i2].DestinationCidrBlock_, response_map, "DescribeRouteTablesResponse.RouteTables[+"+string_ValueOfInt(i1)+"].RouteEntrys["+string_ValueOfInt(i2)+"].DestinationCidrBlock");
          UnmarshallerString(RouteTables_[i1].RouteEntrys_[i2].Type_, response_map, "DescribeRouteTablesResponse.RouteTables[+"+string_ValueOfInt(i1)+"].RouteEntrys["+string_ValueOfInt(i2)+"].Type");
          UnmarshallerString(RouteTables_[i1].RouteEntrys_[i2].Status_, response_map, "DescribeRouteTablesResponse.RouteTables[+"+string_ValueOfInt(i1)+"].RouteEntrys["+string_ValueOfInt(i2)+"].Status");
          UnmarshallerString(RouteTables_[i1].RouteEntrys_[i2].InstanceId_, response_map, "DescribeRouteTablesResponse.RouteTables[+"+string_ValueOfInt(i1)+"].RouteEntrys["+string_ValueOfInt(i2)+"].InstanceId");
          UnmarshallerString(RouteTables_[i1].RouteEntrys_[i2].NextHopType_, response_map, "DescribeRouteTablesResponse.RouteTables[+"+string_ValueOfInt(i1)+"].RouteEntrys["+string_ValueOfInt(i2)+"].NextHopType");
        } // for(int i2 = 0; i2 < RouteTables_i1_RouteEntrys__length; i2++) {
      } // if(RouteTables_i1_RouteEntrys__length >= 0) {

      UnmarshallerString(RouteTables_[i1].VRouterId_, response_map, "DescribeRouteTablesResponse.RouteTables["+string_ValueOfInt(i1)+"].VRouterId");
      UnmarshallerString(RouteTables_[i1].RouteTableId_, response_map, "DescribeRouteTablesResponse.RouteTables["+string_ValueOfInt(i1)+"].RouteTableId");
      UnmarshallerString(RouteTables_[i1].RouteTableType_, response_map, "DescribeRouteTablesResponse.RouteTables["+string_ValueOfInt(i1)+"].RouteTableType");
      UnmarshallerString(RouteTables_[i1].CreationTime_, response_map, "DescribeRouteTablesResponse.RouteTables["+string_ValueOfInt(i1)+"].CreationTime");
    } // for(int i1 = 0; i1 < RouteTables__length; i1++) {
  } // if(RouteTables__length >= 0) {

  UnmarshallerInt(TotalCount_, response_map, "DescribeRouteTablesResponse.TotalCount");
  UnmarshallerInt(PageNumber_, response_map, "DescribeRouteTablesResponse.PageNumber");
  UnmarshallerInt(PageSize_, response_map, "DescribeRouteTablesResponse.PageSize");
}


} } // namespace aliyun { namespace Ecs {

// end of file 
